package com.yt.app.core.model;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

/**
 * Description
 * <p>
 *     订单明细
 * </p>
 * DATE 2017/10/3.
 *
 * @author liujunshi.
 */
@ApiModel(value = "UserReservation", description = "用户预约信息")
public class UserReservation implements Serializable {
    @ApiModelProperty(value = "id")
    private Long id;
    @ApiModelProperty(value = "用户ID")
    private Long uid;
    @ApiModelProperty(value = "预约方式,0:订单直接约(userOrderId和userOrderDetailId不为空), 1:卡号密码约（cardNo和cardPassword不为空）")
    private String reserveType;
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    @ApiModelProperty(value = "订单信息ID")
    private Long userOrderId;
    @ApiModelProperty(value = "订单明细信息ID")
    private Long userOrderDetailId;
    @ApiModelProperty(value = "卡号")
    private String cardNo;
    @ApiModelProperty(value = "密码")
    @JSONField(serialize = false)
    private String cardPassword;
    @ApiModelProperty(value = "商品ID")
    private Long  productId;
    @ApiModelProperty(value = "商品名称")
    private String productName;
    @ApiModelProperty(value = "商品图片")
    private String productImage;
    @ApiModelProperty(value = "机构ID")
    private Long institutionId;
    @ApiModelProperty(value = "机构名称")
    private String institutionName;
    @ApiModelProperty(value = "姓名")
    private String name;
    @ApiModelProperty(value = "性别")
    private String sex;
    @ApiModelProperty(value = "身份证号")
    private String identify;
    @ApiModelProperty(value = "预约时间,格式yyyy-MM-dd")
    private String reserveDate;
    @ApiModelProperty(value = "预约机构ID")
    private Long reserveInstitutionId;
    @ApiModelProperty(value = "预约机构名称")
    private String reserveInstitutionName;
    @JSONField(serialize = false)
    @ApiModelProperty(value = "预约机构分院ID,没用", required = false)
    private Long reserveInstitutionBranchId;
    @JSONField(serialize = false)
    @ApiModelProperty(value = "预约机构分院名称，没用", required = false)
    private String reserveInstitutionBranchName;

    @ApiModelProperty(value = "报告形式：0：电子，1：纸质")
    private String reportType;
    @ApiModelProperty(value = "收件人")
    private String recipient;
    @ApiModelProperty(value = "收件地址")
    private String address;
    @ApiModelProperty(value = "收件电话")
    private String mobile;
    @ApiModelProperty(value = "预约状态：0：预约中，1：预约成功，2：预约失败, 3: 用户取消， 4：已体检， 5：报告已出")
    private String reserveStatus;
    @ApiModelProperty(value = "报告地址")
    private String reportUrl;
    @ApiModelProperty(value = "电子邮箱")
    private String email;
    @ApiModelProperty(value = "备注")
    private String comment;
    @ApiModelProperty(value = "有效期")
    private String leftDays;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public String getReserveType() {
        return reserveType;
    }

    public void setReserveType(String reserveType) {
        this.reserveType = reserveType;
    }

    public Long getUserOrderId() {
        return userOrderId;
    }

    public void setUserOrderId(Long userOrderId) {
        this.userOrderId = userOrderId;
    }

    public Long getUserOrderDetailId() {
        return userOrderDetailId;
    }

    public void setUserOrderDetailId(Long userOrderDetailId) {
        this.userOrderDetailId = userOrderDetailId;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Long getInstitutionId() {
        return institutionId;
    }

    public void setInstitutionId(Long institutionId) {
        this.institutionId = institutionId;
    }

    public String getInstitutionName() {
        return institutionName;
    }

    public void setInstitutionName(String institutionName) {
        this.institutionName = institutionName;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getIdentify() {
        return identify;
    }

    public void setIdentify(String identify) {
        this.identify = identify;
    }

    public String getReserveDate() {
        return reserveDate;
    }

    public void setReserveDate(String reserveDate) {
        this.reserveDate = reserveDate;
    }

    public Long getReserveInstitutionId() {
        return reserveInstitutionId;
    }

    public void setReserveInstitutionId(Long reserveInstitutionId) {
        this.reserveInstitutionId = reserveInstitutionId;
    }

    public String getReserveInstitutionName() {
        return reserveInstitutionName;
    }

    public void setReserveInstitutionName(String reserveInstitutionName) {
        this.reserveInstitutionName = reserveInstitutionName;
    }

    public Long getReserveInstitutionBranchId() {
        return reserveInstitutionBranchId;
    }

    public void setReserveInstitutionBranchId(Long reserveInstitutionBranchId) {
        this.reserveInstitutionBranchId = reserveInstitutionBranchId;
    }

    public String getReserveInstitutionBranchName() {
        return reserveInstitutionBranchName;
    }

    public void setReserveInstitutionBranchName(String reserveInstitutionBranchName) {
        this.reserveInstitutionBranchName = reserveInstitutionBranchName;
    }

    public String getCardNo() {
        return cardNo;
    }

    public void setCardNo(String cardNo) {
        this.cardNo = cardNo;
    }

    public String getCardPassword() {
        return cardPassword;
    }

    public void setCardPassword(String cardPassword) {
        this.cardPassword = cardPassword;
    }

    public String getReportType() {
        return reportType;
    }

    public void setReportType(String reportType) {
        this.reportType = reportType;
    }

    public String getRecipient() {
        return recipient;
    }

    public void setRecipient(String recipient) {
        this.recipient = recipient;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getReserveStatus() {
        return reserveStatus;
    }

    public void setReserveStatus(String reserveStatus) {
        this.reserveStatus = reserveStatus;
    }

    public String getReportUrl() {
        return reportUrl;
    }

    public void setReportUrl(String reportUrl) {
        this.reportUrl = reportUrl;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getProductImage() {
        return productImage;
    }

    public void setProductImage(String productImage) {
        this.productImage = productImage;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getLeftDays() {
        return leftDays;
    }

    public void setLeftDays(String leftDays) {
        this.leftDays = leftDays;
    }
}
